<?php
class ObraBSN extends GenericBSN {

	function __construct() {
		$this->dao = new ObraDAO();		
	}

	public function consultar($vars) {
		$this->preencher($vars);
		$this->Records = $this->dao->consultar($this->where, $this->params, $this->order . $this->limit);
		$this->Result  = "OK";
		$this->TotalRecordCount = $this->dao->contarRegistros($this->where, $this->params);
	}

	public function consultarNomeOuCod($vars) {
		$this->Records = $this->dao->consultarNomeOuCod($vars['valor']);
		$this->Result  = "OK";
	}
	
	public function inserir($vars) {
		$registro['codigo'] 	 = $vars['codigo'];
		$registro['nome'] 		 = $vars['nome'];
		$registro['localizacao'] = $vars['localizacao'];
		$registro['contato'] 	 = $vars['contato'];
		$registro['telefone'] 	 = $vars['telefone'];
		$registro['fax'] 		 = $vars['fax'];
		$registro['ramal']  	 = $vars['ramal'];
		$registro['cliente'] 	 = $vars['cliente'];
		$this->Record = $this->dao->inserir($registro);
		if (is_null($this->Record)) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar inserir";
		} else {
			$this->Result  = "OK";
		}
	}
	
	public function alterar($vars) {
		$registro['id'] 	 	 = $vars['id'];
		$registro['codigo'] 	 = $vars['codigo'];
		$registro['nome'] 		 = $vars['nome'];
		$registro['localizacao'] = $vars['localizacao'];
		$registro['contato'] 	 = $vars['contato'];
		$registro['telefone'] 	 = $vars['telefone'];
		$registro['fax'] 		 = $vars['fax'];
		$registro['ramal']  	 = $vars['ramal'];
		$registro['cliente'] 	 = $vars['cliente'];
		if (is_null($this->dao->alterar($registro))) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar alterar";
		} else {
			$this->Result  = "OK";
		}
	}
	
	public function excluir($registro) {
		try {
			$res = $this->dao->excluir($registro['id']);
			$this->Result  = "OK";
		} catch (Exception $e) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar excluir: " . $e->getMessage();
		}
	}
}
?>